<?php
/*
Cogumelo v0.1 - Map-Experience
Copyright (C) 2008 Innoto Gestión para el Desarrollo Social S.L. <mapinfo@map-experience.com>

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,
USA.
*/

require_once("Classes/Model/DB/Connection.inc");
require_once("Classes/Controllers/Error/ErrorControllerFactory.inc");
require_once("Classes/Controllers/Log/LogControllerFactory.inc");
include("Classes/DBMS/Mysql/mysql_configuration.inc"); //Configurations

//
// mysql connection class
//
class MysqlConnection extends Connection
{
	var $db;
	var $logcontrol;
	
	function __construct(){
		@ $this->db = new mysqli(mysql_HOSTNAME ,mysql_USER , mysql_PASSWORD, mysql_DB_NAME,  mysql_PORT);
		
			if ($this->db->connect_error) {
    			 $errorcontrol=ErrorControllerFactory::getErrorController();
				 $errorcontrol->raiseError(1000,mysqli_connect_error());
    			exit();
			}
			else
			{			   
			   $this->logcontrol=LogControllerFactory::getLogController();
			   $this->logcontrol->setAutodump(true);
			   $this->logcontrol->addLogLine("mySQLi: Connection Stablished to ".mysql_HOSTNAME, 5);
			}
					
		// Controlar errores
		@ mysqli_query($this->db ,"START TRANSACTION;");		
	}
	
	function Close()
	{
		mysqli_query($this->db ,"COMMIT;");
		@ $this->db->close();
		$this->logcontrol->addLogLine("mySQLi: Connection closed", 5);
	}
}

?>